Tipus | control de qualitat del programari i tipus de prova |
---|---|
Part de | enginyeria de programari, gestió de qualitat i IEEE 1012 |
Les proves de programari o proves de software és un procés o investigació dut a terme per a proporcionar als responsables d'un producte o servei informació sobre qualitat del producte o servei que s'està provant.[1]
Glenford J. Myers va definir el terme al seu llibre "The Art of Software Testing", com «el procés d'execució d'un programa o sistema amb la intenció de trobar errors» i William C. Hetzel ho va fer com «qualsevol activitat destinada a l'avaluació d'un atribut o la capacitat d'un programa o sistema i la determinació de que aquesta compleix els resultats requerits»[2]
El programari no difereix molt de la resta de processos físics on es reben unes entrades i es produeixen unes sortides. On el programari es diferencia és amb la manera com falla. La majoria dels sistemes físics fallen d'una manera fixa (o amb variabilitat força baixa). Per contra, el programari pot fallar de moltes formes estranyes, i són les proves de programari les encarregades de detectar aquestes errades, tot i que detectar totes les diferents formes en les que pot fallar el programari no és factible.
Una pràctica comuna és que el procés de proves d'un programa sigui realitzat per un grup independent de "betatesters" en finalitzar el seu desenvolupament i abans de treure'l al mercat.
Una pràctica que ja és molt popular és distribuir de franc una versió no final del producte perquè siguin els mateixos consumidors els que la provin. En ambdós casos, la versió del producte en proves i que és anterior al final s'anomena beta, i a aquesta fase de proves, beta testing. Pot a més existir una versió anterior en el procés de desenvolupament anomenada alpha, en la qual el programa, encara que incomplet, disposa de funcionalitats bàsiques i pot ser testejat.
Finalment i abans de sortir al mercat, és cada vegada més habitual que es faci una fase de RTM testing (Release To Market), on es comprova cada funcionalitat del programa complet en entorns de producció. Una altra pràctica és que el procés de proves es realitzi des del mateix moment en què comença el desenvolupament i continuï fins que finalitza utilitzant un disseny en V.